package io.renren.modules.newBackground.shanghaiCmcc.v2.model;

import com.alibaba.fastjson.JSON;

import java.util.Date;

/**
 * @author yan.jy@primeton.com createTime：2014年7月22日
 * 
 *         加解密密钥模型
 */
public class Aedk {

	/**
	 * 加解密密钥id
	 */
	private Long id;

	/**
	 * 应用编码
	 */
	private String appCode;

	/**
	 * 密钥算法
	 */
	private String algorithm;

	/**
	 * 密钥值
	 */
	private String value;

	/**
	 * 失效时间
	 */
	private Date endTime;

	/**
	 * 有效期剩余时间 ＝ expireTime - currentTime
	 */
	private Long restTime;

	public Aedk() {

	}

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getAppCode() {
		return appCode;
	}

	public void setAppCode(String appCode) {
		this.appCode = appCode;
	}

	public String getValue() {
		return value;
	}

	public void setValue(String value) {
		this.value = value;
	}

	public String getAlgorithm() {
		return algorithm;
	}

	public void setAlgorithm(String algorithm) {
		this.algorithm = algorithm;
	}

	public Long getRestTime() {
		return restTime;
	}

	public void setRestTime(Long restTime) {
		this.restTime = restTime;
	}

	public String toString() {
		return JSON.toJSONString(this);
	}

	public Date getEndTime() {
		if (endTime == null) {
			endTime = new Date(System.currentTimeMillis() + restTime);
		}
		return endTime;
	}

	public void setEndTime(Date endTime) {
		this.endTime = endTime;
	}
}